package com.heima.pojo.entity;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Size;
import javax.validation.constraints.NotNull;

import java.io.Serializable;

import java.time.LocalDateTime;
import java.util.Date;

import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
* 合作商表
* @TableName tb_partner
*/
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@TableName("tb_partner")
public class Partner implements Serializable {

    /**
    * 合作商id
    */
    @NotNull(message="[id]不能为空")
    @ApiModelProperty("合作商id")
    @TableId(value = "id",type = IdType.AUTO)
    private Integer id;
    /**
    * 合作商名称
    */
    @Size(max= 50,message="编码长度不能超过50")
    @ApiModelProperty("合作商名称")
    @TableField("name")
    private String name;
    /**
    * 密码
    */
    @Size(max= 200,message="编码长度不能超过200")
    @ApiModelProperty("密码")
    @TableField("password")
    private String password;
    /**
    * 账号
    */
    @Size(max= 32,message="编码长度不能超过32")
    @ApiModelProperty("账号")
    @TableField("account")
    private String account;
    /**
    * 手机号
    */
    @NotBlank(message="[手机号]不能为空")
    @Size(max= 20,message="编码长度不能超过20")
    @ApiModelProperty("手机号")
    @TableField("mobile")
    private String mobile;
    /**
    * 联系电话
    */
    @Size(max= 20,message="编码长度不能超过20")
    @ApiModelProperty("联系电话")
    @TableField("phone")
    private String phone;
    /**
    * 
    */
    @Size(max= 100,message="编码长度不能超过100")
    @ApiModelProperty("邮箱")
    @TableField("email")
    private String email;
    /**
    * 所在省
    */
    @Size(max= 10,message="编码长度不能超过10")
    @ApiModelProperty("所在省")
    @TableField("province")
    private String province;
    /**
    * 所在市
    */
    @Size(max= 20,message="编码长度不能超过20")
    @ApiModelProperty("所在市")
    @TableField("city")
    private String city;
    /**
    * 区县
    */
    @Size(max= 20,message="编码长度不能超过20")
    @ApiModelProperty("区县")
    @TableField("county")
    private String county;
    /**
    * 详细地址
    */
    @Size(max= 200,message="编码长度不能超过200")
    @ApiModelProperty("详细地址")
    @TableField("addr")
    private String addr;
    /**
    * 联系人
    */
    @Size(max= 10,message="编码长度不能超过10")
    @ApiModelProperty("联系人")
    @TableField("contact")
    private String contact;
    /**
    * 分成比例
    */
    @ApiModelProperty("分成比例")
    @TableField("ratio")
    private Integer ratio;
    /**
    * 状态
    */
    @ApiModelProperty("状态")
    @TableField("status")
    private Boolean status;
    /**
    * 
    */
    @ApiModelProperty("创建时间")
    @TableField(value = "create_time",fill = FieldFill.INSERT)
    @JsonFormat(pattern = "yyyy-MM-dd hh:mm:ss")
    private LocalDateTime createTime;
    /**
    * 
    */
    @ApiModelProperty("更新时间")
    @TableField(value = "update_time",fill = FieldFill.INSERT_UPDATE)
    @JsonFormat(pattern = "yyyy-MM-dd hh:mm:ss")
    private LocalDateTime updateTime;

}
